1. Technical Field
The present invention relates to an information recording apparatus, an information playback apparatus, an information recording method, an information playback method, and a program. More particularly, the present invention relates to an information recording apparatus, an information playback apparatus, an information recording method, an information playback method, and a program, for allowing only authorized content utilization devices to play back various contents such as music, images, games or programs without allowing a content to be transferred or played back via a removable storage device in an unauthorized manner.
2. Background Art
It is now very popular to distribute various kinds of software data such as audio data, a game program and image data (hereinafter, such data will be referred to as a content) via a network such as the Internet or via a distributable storage medium such as a DVD or a CD. More specifically, a distributed content is purchased and played back in such a manner that the content is directly received by a PC (Personal Computer), a portable telephone, a data playback apparatus, or a game machine of a user and stored into an internal memory, or in such a manner that the content is stored into the internal memory via a storage medium such as a memory card, a CD, or a DVD.
An information device such as a portable telephone, a data playback apparatus, a game machine or a PC, used for the above purpose has a capability of receiving a distributed content via a network and/or has an interface for accessing a DVD or a CD, and further has control means necessary in playing back the content and a RAM, a ROM, or the like, used as a memory area for storing a program or data.
Various kinds of contents such as music data, video data, or a program may be read from a storage medium and played back on an information apparatus itself such as a portable telephone, a data playback apparatus device, a game machine or a PC used as a playback apparatus or played back on a display or by a speaker connected to the information apparatus, in response to a command input by a user directly to the information apparatus or indirectly via input means connected to the information apparatus.
In general, the right of distribution of software contents such as a game program, music data, or video data is held by producers or sellers of the software contents. Software contents are generally distributed under specific usage limitation to secure that only authorized users can use software contents and that unauthorized copies thereof cannot be made.
One technique of limiting usage to specific users is to encrypt a content. More specifically, a content such as audio data, video data, or a game program is distributed via the Internet or the like after encrypting the content, and a decryption key, which is means for decrypting the encrypted content, is given only to authorized users.
The encrypted data can be converted into its original form (plaintext) by performing a predetermined decryption process upon the encrypted data. The technique of encrypting and decrypting information using an encryption key and a decryption key is well known in the art.
Various techniques of encrypting and decrypting data using an encryption key and a decryption key are known. One of them is a technique known as common key cryptography. In the common key cryptography, the same key called a common key is used as both an encryption key for encrypting data and a decryption key for decrypting the encrypted data, and the common key is given only to authorized users so that unauthorized users who do not have the common key cannot access the data. A specific example of the common key cryptography is that based on the DES (Data Encryption Standard).
An encryption key for encrypting data and a decryption key for decrypting the encrypted data can be obtained from a password or the like using a unidirectional function such as a hash function. Herein, the unidirectional function refers to a function whose input is very difficult to guess from an output thereof. Although an encryption/decryption key can be generated using an output obtained by applying a unidirectional function to, for example, a password determined by a user, it is substantially impossible to determine, from the obtained encryption/decryption key, the password that is original data from which the encryption/decryption key is generated.
Another known technique is public key cryptography in which an encryption key used for encryption and a decryption key used for decryption are generated in accordance with different algorithms. In the public key cryptography, a public key, which is allowed to be used by any unspecified user, is issued by a particular user, and a document to be provided to that particular user is encrypted using the public key issued by the particular user. The document encrypted using the public key can only be decrypted using a secret key corresponding to the encryption key used to encrypt that document. The secret key is held only by the user who issued the public key, and thus the document encrypted using the public key can be decrypted only by the user having the secret key. A representative example of the public key cryptography is that based on the RSA (Rivest-Shamir-Adelman) algorithm. Using one of above-described cryptography techniques, it is possible to realize a system in which encrypted contents can be decrypted only by authorized users.